package com.ruoyi.project.vehicle.domain;

import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;

/**
 * 车辆信息对象 bins_vehicle_info
 * 
 * @author Administrator
 * @date 2025-04-01
 */
public class BinsVehicleInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 车辆编码 */
    private Long vehicleCode;
    /** 车辆编码 */
    private List<Long> vehicleCodes;

    public List<Long> getVehicleCodes() {
        return vehicleCodes;
    }

    public void setVehicleCodes(List<Long> vehicleCodes) {
        this.vehicleCodes = vehicleCodes;
    }

    /** 车辆名称 */
    @Excel(name = "车辆名称")
    private String vehicleName;

    /** 车牌号 */
    @Excel(name = "车牌号")
    private String licenseNo;

    /** 车型 */
    @Excel(name = "车型")
    private String vehicleType;

    /** 动力类型 */
    @Excel(name = "动力类型")
    private String motorType;

    /** 车辆等级 */
    @Excel(name = "车辆等级")
    private String vehicleLevel;

    /** 车牌颜色 */
    @Excel(name = "车牌颜色")
    private String licenseColor;

    /** 所属商户 */
    @Excel(name = "所属商户")
    private String deptName;

    /** 状态(0启用，1禁用） */
    @Excel(name = "状态(0启用，1禁用）")
    private Integer status;

    /** 营运编号 */
    @Excel(name = "营运编号")
    private String certificateNo;

    /** 营运有效期 */
    @Excel(name = "营运有效期")
    private String certificateExpiryDate;

    /** 经营范围 */
    @Excel(name = "经营范围")
    private String routeCode;

    /** 办卡日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "办卡日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date makeCardTime;

    /** 办卡人 */
    @Excel(name = "办卡人")
    private String makeCardUser;

    /** 自编号 */
    @Excel(name = "自编号")
    private String selfNo;

    /** 锁标识 (0. 开  1.关) */
    @Excel(name = "锁标识 (0. 开  1.关)")
    private Integer lockFlag;

    /** 出厂日期 */
    @Excel(name = "出厂日期")
    private String productionDate;

    /** 产品名称 */
    @Excel(name = "产品名称")
    private String productionName;

    /** 有效期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "有效期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date workExpiryDate;

    /** 工作状态
     * 1.骑行中
     * 2.空闲中
     * */
    @Excel(name = "工作状态")
    private String workStatus;

    /** 使用用户 */
    @Excel(name = "使用用户")
    private String workUser;

    /** 电量 */
    @Excel(name = "电量")
    private String battery;

    /** 位置 */
    @Excel(name = "位置")
    private String address;

    /** 地图位置 */
    @Excel(name = "地图位置")
    private String point;

    /** 备用 */
    @Excel(name = "备用")
    private String res;

    /** 部门ID */
    @Excel(name = "部门ID")
    private Long deptId;

    public void setVehicleCode(Long vehicleCode) 
    {
        this.vehicleCode = vehicleCode;
    }

    public Long getVehicleCode() 
    {
        return vehicleCode;
    }

    public void setVehicleName(String vehicleName) 
    {
        this.vehicleName = vehicleName;
    }

    public String getVehicleName() 
    {
        return vehicleName;
    }

    public void setLicenseNo(String licenseNo) 
    {
        this.licenseNo = licenseNo;
    }

    public String getLicenseNo() 
    {
        return licenseNo;
    }

    public void setVehicleType(String vehicleType) 
    {
        this.vehicleType = vehicleType;
    }

    public String getVehicleType() 
    {
        return vehicleType;
    }

    public void setMotorType(String motorType) 
    {
        this.motorType = motorType;
    }

    public String getMotorType() 
    {
        return motorType;
    }

    public void setVehicleLevel(String vehicleLevel) 
    {
        this.vehicleLevel = vehicleLevel;
    }

    public String getVehicleLevel() 
    {
        return vehicleLevel;
    }

    public void setLicenseColor(String licenseColor) 
    {
        this.licenseColor = licenseColor;
    }

    public String getLicenseColor() 
    {
        return licenseColor;
    }

    public void setDeptName(String deptName) 
    {
        this.deptName = deptName;
    }

    public String getDeptName() 
    {
        return deptName;
    }

    public void setStatus(Integer status) 
    {
        this.status = status;
    }

    public Integer getStatus() 
    {
        return status;
    }

    public void setCertificateNo(String certificateNo) 
    {
        this.certificateNo = certificateNo;
    }

    public String getCertificateNo() 
    {
        return certificateNo;
    }

    public void setCertificateExpiryDate(String certificateExpiryDate) 
    {
        this.certificateExpiryDate = certificateExpiryDate;
    }

    public String getCertificateExpiryDate() 
    {
        return certificateExpiryDate;
    }

    public void setRouteCode(String routeCode) 
    {
        this.routeCode = routeCode;
    }

    public String getRouteCode() 
    {
        return routeCode;
    }

    public void setMakeCardTime(Date makeCardTime) 
    {
        this.makeCardTime = makeCardTime;
    }

    public Date getMakeCardTime() 
    {
        return makeCardTime;
    }

    public void setMakeCardUser(String makeCardUser) 
    {
        this.makeCardUser = makeCardUser;
    }

    public String getMakeCardUser() 
    {
        return makeCardUser;
    }

    public void setSelfNo(String selfNo) 
    {
        this.selfNo = selfNo;
    }

    public String getSelfNo() 
    {
        return selfNo;
    }

    public void setLockFlag(Integer lockFlag)
    {
        this.lockFlag = lockFlag;
    }

    public Integer getLockFlag()
    {
        return lockFlag;
    }

    public void setProductionDate(String productionDate) 
    {
        this.productionDate = productionDate;
    }

    public String getProductionDate() 
    {
        return productionDate;
    }

    public void setProductionName(String productionName) 
    {
        this.productionName = productionName;
    }

    public String getProductionName() 
    {
        return productionName;
    }

    public void setWorkExpiryDate(Date workExpiryDate) 
    {
        this.workExpiryDate = workExpiryDate;
    }

    public Date getWorkExpiryDate() 
    {
        return workExpiryDate;
    }

    public void setWorkStatus(String workStatus) 
    {
        this.workStatus = workStatus;
    }

    public String getWorkStatus() 
    {
        return workStatus;
    }

    public void setWorkUser(String workUser) 
    {
        this.workUser = workUser;
    }

    public String getWorkUser() 
    {
        return workUser;
    }

    @Override
    public String toString() {
        return "BinsVehicleInfo{" +
                "vehicleCode=" + vehicleCode +
                ", vehicleName='" + vehicleName + '\'' +
                ", licenseNo='" + licenseNo + '\'' +
                ", vehicleType='" + vehicleType + '\'' +
                ", motorType='" + motorType + '\'' +
                ", vehicleLevel='" + vehicleLevel + '\'' +
                ", licenseColor='" + licenseColor + '\'' +
                ", deptName='" + deptName + '\'' +
                ", status=" + status +
                ", certificateNo='" + certificateNo + '\'' +
                ", certificateExpiryDate='" + certificateExpiryDate + '\'' +
                ", routeCode='" + routeCode + '\'' +
                ", makeCardTime=" + makeCardTime +
                ", makeCardUser='" + makeCardUser + '\'' +
                ", selfNo='" + selfNo + '\'' +
                ", lockFlag='" + lockFlag + '\'' +
                ", productionDate='" + productionDate + '\'' +
                ", productionName='" + productionName + '\'' +
                ", workExpiryDate=" + workExpiryDate +
                ", workStatus='" + workStatus + '\'' +
                ", workUser='" + workUser + '\'' +
                ", battery='" + battery + '\'' +
                ", address='" + address + '\'' +
                ", point='" + point + '\'' +
                ", res='" + res + '\'' +
                ", deptId=" + deptId +
                '}';
    }

    public String getBattery() {
        return battery;
    }

    public void setBattery(String battery) {
        this.battery = battery;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getPoint() {
        return point;
    }

    public void setPoint(String point) {
        this.point = point;
    }

    public void setRes(String res)
    {
        this.res = res;
    }

    public String getRes() 
    {
        return res;
    }

    public void setDeptId(Long deptId) 
    {
        this.deptId = deptId;
    }

    public Long getDeptId() 
    {
        return deptId;
    }

}
